Currently, if one wishes to transmit two signals with high efficiency over two different bands, the dual band digital pre-distortion (DB-DPD) system shown in FIG. 1 may be used. Complex baseband signals BB1 101 and BB2 102 are centered at 0 Hz and have a bandwidth of B1 and B2 respectively. The intent of the DB-DPD system is that BB1 and BB2 will appear on the power amplifier's output centered at frequencies fc1 and fc2 respectively.
Signals BB1 101 and BB2 102 are sent into frequency shifters 103 and 104 respectively, and the frequency shifters 103 and 104 shift the frequencies of the signals BB1 101 and BB2 102 to f1 and f2 respectively. These two shifted signals are combined by an adder 105 and then forwarded to a pre-distortion module 106, which processes the combined signal by a pre-distortion function. The output of the pre-distortion module 106 is then sent to a final frequency shifter 107 which shifts the frequency by fu. It should be clear that f1+fu=fc1 and f2+fu=fc2. Also, fc2−fc1=f2−f1. In this application, a device which shifts the center frequency of a signal is called a ‘frequency shifter’. Other equivalent terminology exists such as ‘upconverter’ and ‘downconverter’, but this application will use the term ‘frequency shifter’.
The output of the final frequency shifter 107 is sent to a power amplifier (PA) 108, and the PA 108 produces the final signal which will be transmitted.
The power amplifier 108 is typically a low efficiency device and one method that can be used to improve its efficiency is to drive it into its nonlinear region. The problem is that the more the PA is driven into its nonlinear region, the higher the amount of distortion that is introduced by the PA.
The goal of the pre-distortion function, which is also a non-linear function, is to create a signal to be sent to the PA such that the output signal of the PA contains little or no distortion. In other words, although the pre-distortion function and the PA are individually non-linear, the cascade of the pre-distortion function and the PA produces a system that is linear overall.
Although many functions can be used for the pre-distortion function, one function that is often used is called the memory polynomial, which is shown in Eq 1:
                              pd_out          ⁢                      (            n            )                          =                              ∑                          j              =              0                                      M              -              1                                ⁢                                    ∑                              k                =                0                                            L                -                1                                      ⁢                                          h                                  j                  ,                  k                                            ⁢              pd_in              ⁢                              (                                  n                  -                  j                                )                            ⁢                                                                                                              pd_in                      ⁢                                              (                                                  n                          -                          j                                                )                                                                                                  k                                .                                                                        Eq        ⁢                                  ⁢        1            
Wherein pd_in is the signal input into the pre-distortion function and pd_out is the signal produced by the pre-distortion function, n is the sample index, and M and L represent the memory depth and nonlinearity length of the above example of a pre-distortion function, respectively. The actual values used for M and L will vary based on the actual PA that is being used but typically, M will be a rather small number around 4 and L will be around 10.
One method that can be used to calculate the coefficients hj,k is the indirect learning architecture. The concept of the indirect learning architecture is that a model, which models the input of the PA based on the output of the PA, is created. Once such a model is created, the model is used directly as the pre-distortion function.
For example, suppose that several samples input into and output from the PA are captured and are denoted as pi for the samples input into the PA, and po for the samples output from the PA. The required number of samples varies from one PA to another PA but typically, the required number of samples is between 2000 and 10000.
These samples are typically observed using a capture buffer 111. The capture buffer 111 has two inputs. One input of the capture buffer 111 comes from the output of the pre-distortion module 106. The other input of the capture buffer 111 first comes from a coupler 110 which extracts a small portion (typically less than 1% of the output power) of the signal coming from the PA. The most important property of the coupler is that it produces a signal that very accurately represents the actual output of the PA, but at a significantly reduced power level. This extracted signal is forwarded to a frequency shifter 109 which shifts the signal back down in frequency by fu. The output of this frequency shifter 109 is connected to the other input of the capture buffer 111.
The capture buffer 111 is typically controlled by a Digital Signal Processor (DSP) 112 which, through the use of a trigger signal, indicates when the capture buffer 111 should begin capturing data. Once the capture buffer 111 receives a trigger signal, it begins to capture data until the memory of the capture buffer 111 has been completely filled.
After the capture buffer's memory has been filled, the captured values for pi and po are typically read out of the capture buffer 111 by a Digital Signal Processor (DSP) 112 which proceeds to solve for the coefficients ĥj,k in the following equation Eq 2 using least squares minimization.
                                          p            i                    ⁡                      (            n            )                          =                              ∑                          j              =              0                                      M              -              1                                ⁢                                    ∑                              k                =                0                                            L                -                1                                      ⁢                                                            h                  ^                                                  j                  ,                  k                                            ⁢                                                p                  o                                ⁡                                  (                                      n                    -                    j                                    )                                            ⁢                                                                                                                                      p                        o                                            ⁡                                              (                                                  n                          -                          j                                                )                                                                                                  k                                .                                                                        Eq        ⁢                                  ⁢        2            
Specifically, the above equation Eq 2 can be expressed using matrix arithmetic as Eq 3:{right arrow over (p)}i=H{right arrow over (h)}.  Eq 3
Wherein the {right arrow over (p)}i, H, and {right arrow over (h)} in Eq 3 can be expressed as Eq 4, Eq 5, and Eq 6 respectively:
                                          p            →                    i                =                  [                                                                                          p                    i                                    ⁡                                      (                    1                    )                                                                                                                                            p                    i                                    ⁡                                      (                    2                    )                                                                                                      …                                              ]                                    Eq        ⁢                                  ⁢        4                                H        =                  [                                                                                          p                    o                                    ⁡                                      (                    1                    )                                                                              …                                                                                                        p                      o                                        ⁡                                          (                      1                      )                                                        ⁢                                                                                                                                    p                          o                                                ⁡                                                  (                          1                          )                                                                                                            L                                                                              …                                                                                  p                    o                                    ⁡                                      (                                          1                      -                      M                                        )                                                                              …                                                                                                        p                      o                                        ⁡                                          (                                              1                        -                        M                                            )                                                        ⁢                                                                                                                                    p                          o                                                ⁡                                                  (                                                      1                            -                            M                                                    )                                                                                                            L                                                                                                                                            p                    o                                    ⁡                                      (                    2                    )                                                                              …                                                                                                        p                      o                                        ⁡                                          (                      2                      )                                                        ⁢                                                                                                                                    p                          o                                                ⁡                                                  (                          2                          )                                                                                                            L                                                                              …                                                                                  p                    o                                    ⁡                                      (                                          2                      -                      M                                        )                                                                              …                                                                                                        p                      o                                        ⁡                                          (                                              2                        -                        M                                            )                                                        ⁢                                                                                                                                    p                          o                                                ⁡                                                  (                                                      2                            -                            M                                                    )                                                                                                            L                                                                                                      …                                            …                                            …                                            …                                            …                                            …                                            …                                              ]                                    Eq        ⁢                                  ⁢        5                                          h          →                =                              [                                                                                                      h                      ^                                                              0                      ,                      0                                                                                                                    …                                                                                                                        h                      ^                                                              0                      ,                      L                                                                                                                    …                                                                                                                        h                      ^                                                              M                      ,                      0                                                                                                                    …                                                                                                                        h                      ^                                                              M                      ,                      L                                                                                            ]                    .                                    Eq        ⁢                                  ⁢        6            
The least squares minimization solution to the overdetermined equation Eq 3 is expressed as Eq 7:{right arrow over (h)}=(HHH)−1HH{right arrow over (p)}i.  Eq 7
The general operation of the DB-DPD system shown in FIG. 1 is that when the DB-DPD system is first turned on, h0,0 will be 1 and all other values of hj,k will be zero. Some data will be captured by the capture buffer 111 and analyzed by the DSP 112 so as to produce the vector {right arrow over (h)} and all of the values of ĥj,k. After these values have been calculated, all of the hj,k values will be simultaneously updated and replaced with the ĥj,k values. One can consider the hj,k values to be the ‘old values’ or the ‘current values’ which are updated all at once with the ĥj,k values which can be considered the ‘new values’ or the ‘updated values’.
The process of capturing data, performing calculations, and finally updating the coefficients hj,k can be considered as one iteration. Typically, several iterations are performed so as to reach a final optimal solution. Also, if it is known that the characteristics of the PA will be changing in time, iterations may be performed continuously.
As shown in FIG. 2, the bandwidth of the signal input into the pre-distortion function is expressed as Eq 8 or Eq 9:
                              B                      PD            ,                          i              ⁢                                                          ⁢              n                                      =                              f                                          c                                  2                  ⁢                                                                                                    ⁢                                                                            -                      f                          c              1                                +                                    B              1                        2                    +                                    B              2                        2                                              Eq        ⁢                                  ⁢        8                                          B                      PD            ,                          i              ⁢                                                          ⁢              n                                      =                              B            1                    +                      B            2                    +                                    B              deadspace                        .                                              Eq        ⁢                                  ⁢        9            
Wherein the Bdeadspace is the amount of unused bandwidth between signals BB1 and BB2, which is expressed as Eq 10:
                              B          deadspace                =                              f                          c              2                                -                      f                          c              1                                -                                    B              1                        2                    -                                                    B                2                            2                        .                                              Eq        ⁢                                  ⁢        10            
It is well known to a person skilled in the art that the bandwidth of the signal output from the pre-distortion module 106 is significantly larger than the bandwidth BPD,in of the signal input into the pre-distortion module 106. The actual bandwidth required on the output of the pre-distortion module 106 so as to sufficiently linearize the PA 108 depends on the actual PA 108 in use, the center frequency of the PA 108, and the actual signal being transmitted through the PA 108. However, a general rule of thumb is that the bandwidth of the signal output from the pre-distortion module 106 must be about 5 to 7 times the bandwidth of the signal input into the pre-distortion module 106. Although the bandwidth expansion factor of the pre-distortion module 106 will vary based on the particular application, for the discussion in this application, the bandwidth expansion factor will be assumed to be 7. Thus the bandwidth BPD,out of the signal output from the pre-distortion module is expressed in Eq 11:BPD,out=7BPD,in.  Eq 11
The pre-distortion module will produce output samples at a sampling rate of at least BPD,out. Thus, the larger BPD,in is, the more stringent the requirements on the pre-distortion function are. Specifically, the sampling rate of the output of the pre-distortion module, and the minimum rate at which the pre-distortion module must calculate output samples, is:fs,PDout=7BPD,in=7(B1+B2+Bdeadspace).  Eq 12
Thus, although the final signal to be transmitted from the PA only contains energy over a frequency range totaling B1+B2, the sampling rate of the pre-distortion module is severely degraded by Bdeadspace. For example, suppose that B1 and B2 are 5 MHz and 10 MHz respectively and suppose further that Bdeadspace is 200 MHz. Although only 15 MHz of information will be transmitted by the PA, the output of the pre-distortion module will need to run at a frequency of about 1.5 GHz!
Note that typically, the sampling rate of the data input into the pre-distortion module will be equal to the sampling rate of the data output from the pre-distortion function:fs,PDout=fs,PDin  Eq 13
Furthermore, the sampling rate of all the processing before the pre-distortion function will also typically be at the same rate as fs,PDin.
It can be seen from the above description that the minimum sampling rate required by the related art is expressed in Eq 14:fs,min,prior—art=7(B1+B2+Bdeadspace)  Eq 14
And the implementation cost of the related art is related to fs,min,prior—art. The larger fs,min,prior—art is, the larger the implementation cost is.
Thus, the implementation cost of the related art depends on Bdeadspace and can become immense if Bdeadspace is very large. It would be beneficial if a solution existed to reduce the implementation cost of a dual band pre-distortion transmitter. Furthermore, it would also be beneficial if a solution existed such that the implementation cost of a dual band pre-distortion transmitter would not be a function of Bdeadspace.